var sysId = "";
var nodeId = "";
var nodeName = "";
var tableName = "";
var nodeTypeNew = "";
var isTemplet = "N"; // 是否显示全部字段，默认否
var type = undefined; // 当前【生成方式】选择的值 默认为 undefined
var typeFlag = true;
var newValueSelect = undefined; // 当前【生成方式】选择的值
var isSecondAndAJJ = false; // 表是否为2级表结构下的案卷级表标识（Y：是；N：否）
var colGeneMethodOld; // 全局变量，用于子页面点返回时恢复主页面配置
var colGeneMethodRuleOld; // 全局变量，用于子页面点返回时恢复主页面配置
var colValueNameOld; // 全局变量，用于子页面点返回时恢复主页面配置

/** *add by gl 2016-01-28 start 用于接收子页面配置值在父页面统一保存** */
var idSet = ""; // 设置规则的字段ID
var colGeneMethodSet = ""; // 生成方式
var colGeneMethodRuleSet = ""; // 生成方式值
var groupJson = ""; // 组合想配置json串
// 统计生成参数
var operation = ""; // 运算方式
var groupSelect1 = ""; // 字段1
var groupSelect2 = ""; // 字段2
var groupSelect3 = ""; // 字段3
var groupInput1 = ""; // 固定值1
var groupInput2 = ""; // 固定值2
/** *add by gl 2016-01-28 end 用于接收子页面配置值在父页面统一保存** */

//add by zhangjq 2019-8-3
var colGeneMethodRuleText = "";//保存组合项生成的中文部分
//end add

/**
 * 用于单元格编辑是重写的方法
 */
$.extend($.fn.datagrid.methods, {
	editCell : function(jq, param) {
		return jq.each(function() {
			var fields = $(this).datagrid('getColumnFields', true).concat(
					$(this).datagrid('getColumnFields'));
			for ( var i = 0; i < fields.length; i++) {
				var col = $(this).datagrid('getColumnOption', fields[i]);
				col.editor1 = col.editor;
				if (fields[i] != param.field) {
					var fieldOpts = $(this).datagrid('getColumnOption',
							fields[i]);
					if (!fieldOpts.hidden || fieldOpts.hidden == false) {
						col.editor = null;
					}
				}
			}
			$(this).datagrid('beginEdit', param.index);
			for ( var i = 0; i < fields.length; i++) {
				var col = $(this).datagrid('getColumnOption', fields[i]);
				col.editor = col.editor1;
			}
		});
	},
	addEditor : function(jq, param) {
		if (param instanceof Array) {
			$.each(param, function(index, item) {
				var e = $(jq).datagrid('getColumnOption', item.field);
				e.editor = item.editor;
			});
		} else {
			var e = $(jq).datagrid('getColumnOption', param.field);
			e.editor = param.editor;
		}
	},
	removeEditor : function(jq, param) {
		if (param instanceof Array) {
			$.each(param, function(index, item) {
				var e = $(jq).datagrid('getColumnOption', item);
				e.editor = {};
			});
		} else {
			var e = $(jq).datagrid('getColumnOption', param);
			e.editor = {};
		}
	}
});
/**
 * 编辑数据
 */
var editIndex = undefined;

function endEditing() {
	if (editIndex == undefined) {
		return true;
	}
	if ($('#cbbTabColumnsDataGrid').datagrid('validateRow', editIndex)) {
		$('#cbbTabColumnsDataGrid').datagrid('endEdit', editIndex);
		return true;
	} else {
		parent.parent.parent.$.messager.show({
			title : commonLang.tip.alert,// '提示',
			// commonLang.tip.checkData "请检查数据是否正确！"
			msg : commonLang.tip.checkData,
			timeout : 2000,
			showType : 'slide'
		});
		return false;
	}

}
/**
 * 单击行
 * 
 * @param index
 */
function onClickRow(rowIndex, field, value) {
	if (endEditing()) {
		$("#cbbTabColumnsDataGrid").datagrid('removeEditor', 'colIsVisible'); // 删除【是否显示】编辑器
		$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【是否显示】编辑器
			field : 'colIsVisible',
			editor : {
				type : 'checkbox',
				options : {
					on : 'Y',
					off : 'N'
				}
			}
		});

		$("#cbbTabColumnsDataGrid").datagrid('removeEditor', 'colIsEdit'); // 删除【是否编辑】编辑器
		$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【是否编辑】编辑器
			field : 'colIsEdit',
			editor : {
				type : 'checkbox',
				options : {
					on : 'Y',
					off : 'N'
				}
			}
		});

		$("#cbbTabColumnsDataGrid").datagrid('removeEditor', 'colIsComplement'); // 删除【是否补足】编辑器
		$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【是否补足】编辑器
			field : 'colIsComplement',
			editor : {
				type : 'checkbox',
				options : {
					on : 'Y',
					off : 'N'
				}
			}
		});

		// 给不同类型的字段添加【生成方式规则显示】添加EDIT编辑器
		var row = $("#cbbTabColumnsDataGrid").datagrid('getSelected');
		var colType = row.colType; // 字段类型
		var colLength = row.colLength; // 长度
		var colDecimal = row.colDecimal; // 小数位数
		var colGeneMethod = row.colGeneMethod; // 生成方式
		var colDropdownType = row.colDropdownType; // 类型
		// 空
		if (colGeneMethod == "0") {
			// 删除编辑器
			$("#cbbTabColumnsDataGrid")
					.datagrid('removeEditor', 'colValueName'); // 删除【生成方式规则显示】编辑器
		}
		// 默认值
		if (colGeneMethod == "1") {
			if (colDropdownType == "0") { // 无
				if ("date" == colType) { // 日期
					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					/*
					 * colIsComplement eld : 'colValueName', editor : { type :
					 * 'datebox' } });
					 */
				} else if ("string" == colType) { // 字符串
					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					/*
					 * $("#cbbTabColumnsDataGrid").datagrid('addEditor', { //
					 * 添加【生成方式规则显示】编辑器 field : 'colValueName', editor : { type :
					 * 'validatebox', options : { required : false, validType :
					 * 'length[0,' + colLength + ']' } } });
					 */
				} else if ("clob" == colType) { // 大字段
					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					/*
					 * 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
					 * $("#cbbTabColumnsDataGrid").datagrid('addEditor', { //
					 * 添加【生成方式规则显示】编辑器 field : 'colValueName', editor : { type :
					 * 'validatebox', options : { required : false } } });
					 */
				} else if ("integer" == colType) { // 整型
					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【生成方式规则显示】编辑器
						field : 'colValueName',
						editor : {
							type : 'numberbox',
							options : {
								min : 0,
								max : 999999999999999999999
							}
						}
					});
				} else if ("float" == colType) { // 浮点型
					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【生成方式规则显示】编辑器
						field : 'colValueName',
						editor : {
							type : 'numberbox',
							options : {
								min : 0,
								max : 999999999999999999999,
								precision : colDecimal
							}
						}
					});
				}
			} else if (colDropdownType == "1") { // 参选
				// 删除编辑器
				$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
						'colValueName'); // 删除【生成方式规则显示】编辑器
			} else if (colDropdownType == "2") { // 只选
				// 删除编辑器
				$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
						'colValueName'); // 删除【生成方式规则显示】编辑器
			} else if (colDropdownType == "3") { // 选择（选人，选部门，自定义弹出页）
				// 删除编辑器
				$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
						'colValueName'); // 删除【生成方式规则显示】编辑器
			}
		}
		// 序列
		if (colGeneMethod == "2") {
			$("#cbbTabColumnsDataGrid")
					.datagrid('removeEditor', 'colValueName'); // 删除【生成方式规则显示】编辑器
			$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【生成方式规则显示】编辑器
				field : 'colValueName',
				editor : {
					type : 'text'
				}
			});
		}
		// 顺带
		if (colGeneMethod == "3") {
			$("#cbbTabColumnsDataGrid")
					.datagrid('removeEditor', 'colValueName'); // 删除【生成方式规则显示】编辑器
		}
		// 组合项
		if (colGeneMethod == "4") {
			$("#cbbTabColumnsDataGrid")
					.datagrid('removeEditor', 'colValueName'); // 删除【生成方式规则显示】编辑器
		}
		// 统计生成
		if (colGeneMethod == "5") {
			$("#cbbTabColumnsDataGrid")
					.datagrid('removeEditor', 'colValueName'); // 删除【生成方式规则显示】编辑器
		}

		$('#cbbTabColumnsDataGrid').datagrid('selectRow', rowIndex).datagrid(
				'beginEdit', rowIndex);
		// 顺序字段设置为只读
		var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
				rowIndex);
		var ed0 = editors[0];
		var $input = ed0.target; // 得到文本框对象
		$input.prop('readonly', true); // 设值只读
		editIndex = rowIndex;
	} else {
		$('#cbbTabColumnsDataGrid').datagrid('selectRow', editIndex);
	}
}
/**
 * 提交改变的记录
 */
function accept() {
	if (endEditing()) {
		MaskUtil.mask();
		// 更新字段
		var updateRows = $("#cbbTabColumnsDataGrid").datagrid('getChanges',
				'updated');
		var updateData = JSON.stringify(updateRows);
		if (updateRows.length > 0 || colGeneMethodRuleSet != "") {
			$
					.ajax({
						url : 'platform/aos/commtablemanagerController/updateCbbTabColumnsData.json',
						data : {
							param : updateData,
							sysId : sysId,
							nodeId : nodeId,
							nodeName : nodeName,
							tableName : tableName,
							type : 'code',
							// 子页面设置规则值
							idSet : idSet,
							colGeneMethod : colGeneMethodSet,
							colGeneMethodRule : colGeneMethodRuleSet,
							groupJson : groupJson,
							// 统计生成参数
							operation : operation,
							groupSelect1 : groupSelect1,
							groupSelect2 : groupSelect2,
							groupSelect3 : groupSelect3,
							groupInput1 : groupInput1,
							groupInput2 : groupInput2,
							//add by zhangjq
							colGeneMethodRuleText: colGeneMethodRuleText
							//end add
						},
						type : 'post',
						dataType : 'json',
						success : function(result) {
							if (result.flag == "failure") {
								parent.parent.parent.$.messager.show({
									title : commonLang.tip.alert,// '提示'
									// commonLang.optip.saveFailure"保存失败！"
									msg : commonLang.optip.saveFailure
								});
							} else {
								reloadDataGrid();
								parent.parent.parent.$.messager.show({
									title : commonLang.tip.alert,// '提示'
									// commonLang.optip.saveSuccess"保存成功！"
									msg : commonLang.optip.saveSuccess
								});
							}
							// 重置配置页面传回来的数据
							idSet = "";
							colGeneMethodSet = "";
							colGeneMethodRuleSet = "";
							groupJson = "";
							// 统计生成参数
							operation = "";
							groupSelect1 = "";
							groupSelect2 = "";
							groupSelect3 = "";
							groupInput1 = "";
							groupInput2 = "";
						}
					});
		} else {
			parent.parent.parent.$.messager.show({
				title : commonLang.tip.alert,// '提示'
				timeout : 2000,
				// commonLang.tip.alert2"没有可保存的记录！"
				msg : commonLang.tip.alert2
			});
		}
		MaskUtil.unmask();
	}
}

/**
 * 刷新表格数据
 */
function reloadDataGrid() {
	var url = 'platform/aos/commtablemanagerController/getCbbTabColumnsDataForZL.json?sysId='
			+ sysId + '&tableName=' + tableName + '&isTemplet=' + isTemplet;
	;
	$('#cbbTabColumnsDataGrid').datagrid("options").url = url;
	$("#cbbTabColumnsDataGrid").datagrid('load', {
		param : null
	});
}

/**
 * 转换【生成方式】
 * 
 * @param value
 * @param row
 * @param index
 * @returns
 */
function fomaterColGeneMethod(value, row, index) {
	var type = "";
	if (value == '0') {
		type = commonLang.fomaterType.empty;// "空";
	} else if (value == '1') {
		type = commonLang.fomaterType.defaultValue;// "默认值";
	} else if (value == '2') {
		type = commonLang.fomaterType.sequence;// "序列";
	} else if (value == '3') {
		type = commonLang.fomaterType.smooth;// "顺带";
	} else if (value == '4') {
		type = commonLang.fomaterType.combinatorialItem;// "组合项";
	} else if (value == '5') {
		type = commonLang.fomaterType.statisticalGeneration;// "统计生成";
	} else if (value == '6') {
		type = commonLang.fomaterType.value3;// "选择";
	}
	if (row.colIsDisplay == "N" && row.colIsSys == "Y") {
		return "<font color='red'>" + type + "</font>";
	} else {
		return type;
	}
}

/**
 * 转换【显示格式】
 * 
 * @param value
 * @param row
 * @param index
 * @returns
 */
function fomaterColShowFormat(value, row, index) {
	var type = "";
	if (value == '0') {
		type = commonLang.fomaterType.value0;// "无";
	} else if (value == '1') {
		type = commonLang.dataType.date;// "日期";
	} else if (value == '2') {
		type = commonLang.dataType.money;// "金额";
	}
	if (row.colIsDisplay == "N" && row.colIsSys == "Y") {
		return "<font color='red'>" + type + "</font>";
	} else {
		return type;
	}
}

/**
 * 转换是否
 * 
 * @param value
 * @param row
 * @param index
 * @returns
 */
function fomaterYn(value, row, index) {
	if (value == 'Y') {
		return commonLang.fomaterType.ifYes;// "是";
	} else {
		return commonLang.fomaterType.ifNo;// "否";
	}
	return value;
}

// 上移
function MoveUp() {
	var row = $("#cbbTabColumnsDataGrid").datagrid('getSelected');
	if (row == null) {
		// commonLang.tip.alert,'提示',commonLang.tip.content31'请选择要上移的记录！'

		$.messager.alert(commonLang.tip.alert, commonLang.tip.content31,
				'warning');
		return false;
	}
	var index = $("#cbbTabColumnsDataGrid").datagrid('getRowIndex', row);
	mysort(index, 'up', 'cbbTabColumnsDataGrid');

}
// 下移
function MoveDown() {
	var row = $("#cbbTabColumnsDataGrid").datagrid('getSelected');
	if (row == null) {
		// commonLang.tip.alert,'提示',commonLang.tip.content32'请选择要下移的记录！'

		$.messager.alert(commonLang.tip.alert, commonLang.tip.content32,
				'warning');
		return false;
	}
	var index = $("#cbbTabColumnsDataGrid").datagrid('getRowIndex', row);
	mysort(index, 'down', 'cbbTabColumnsDataGrid');

}

// 上移下移的具体方法
function mysort(index, type, gridname) {
	if ("up" == type) {
		if (index != 0) {
			// 获取要更换的行信息
			var toup = $('#' + gridname).datagrid('getData').rows[index];
			var upRow = toup.colOrder; // 选择行排序号
			var todown = $('#' + gridname).datagrid('getData').rows[index - 1];
			var downRow = todown.colOrder; // 目标行排序号
			// 互换行数据
			$('#' + gridname).datagrid('getData').rows[index] = todown;
			$('#' + gridname).datagrid('getData').rows[index - 1] = toup;
			$('#' + gridname).datagrid('refreshRow', index);
			$('#' + gridname).datagrid('refreshRow', index - 1);
			// 打开编辑器
			$('#' + gridname).datagrid('selectRow', index).datagrid(
					'beginEdit', index);
			$('#' + gridname).datagrid('selectRow', index - 1).datagrid(
					'beginEdit', index - 1);
			// 通过编辑器给序号充值
			var ed = $('#' + gridname).datagrid('getEditor', {
				index : index,
				field : 'colOrder'
			});
			$(ed.target).val(upRow);
			var ed1 = $('#' + gridname).datagrid('getEditor', {
				index : index - 1,
				field : 'colOrder'
			});
			$(ed1.target).val(downRow);
			// 关闭行编辑
			$('#' + gridname).datagrid('selectRow', index).datagrid('endEdit',
					index);
			$('#' + gridname).datagrid('selectRow', index - 1).datagrid(
					'endEdit', index - 1);
			// 选中当前行
			$('#' + gridname).datagrid('selectRow', index - 1);
			$('#' + gridname).datagrid('uncheckRow', index);
		}
	} else if ("down" == type) {
		var rows = $('#' + gridname).datagrid('getRows').length;
		if (index != rows - 1) {
			// 获取要更换的行信息
			var todown = $('#' + gridname).datagrid('getData').rows[index];
			var downRow = todown.colOrder; // 选择行排序号
			var toup = $('#' + gridname).datagrid('getData').rows[index + 1];
			var upRow = toup.colOrder; // 目标行排序号
			// 互换行数据
			$('#' + gridname).datagrid('getData').rows[index + 1] = todown;
			$('#' + gridname).datagrid('getData').rows[index] = toup;
			$('#' + gridname).datagrid('refreshRow', index);
			$('#' + gridname).datagrid('refreshRow', index + 1);
			// 打开编辑器
			$('#' + gridname).datagrid('selectRow', index).datagrid(
					'beginEdit', index);
			$('#' + gridname).datagrid('selectRow', index + 1).datagrid(
					'beginEdit', index + 1);
			// 通过编辑器给序号充值
			var ed = $('#' + gridname).datagrid('getEditor', {
				index : index,
				field : 'colOrder'
			});
			$(ed.target).val(downRow);
			var ed1 = $('#' + gridname).datagrid('getEditor', {
				index : index + 1,
				field : 'colOrder'
			});
			$(ed1.target).val(upRow);
			// 关闭行编辑
			$('#' + gridname).datagrid('selectRow', index).datagrid('endEdit',
					index);
			$('#' + gridname).datagrid('selectRow', index + 1).datagrid(
					'endEdit', index + 1);
			// 选中当前行
			$('#' + gridname).datagrid('uncheckRow', index);
			$('#' + gridname).datagrid('selectRow', index + 1);
		}
	}

}

/**
 * 【是否显示】转换方法
 * 
 * @param value
 * @param rowData
 * @param rowIndex
 * @returns {String}
 */
function fomaterIsVisible(value, rowData, rowIndex) {
	var c = "";
	if (rowData.colIsVisible == "Y") {
		c = "<input type='checkbox' id='" + rowData.id
				+ "' checked='checked' value='Y' onclick='onCheckIsVisible(\""
				+ rowData.id + "\"," + rowIndex + ")' />";
	} else {
		c = "<input type='checkbox' id='" + rowData.id
				+ "' value='N' onclick='onCheckIsVisible(\"" + rowData.id
				+ "\"," + rowIndex + ")' />";
	}
	return c;
}

/**
 * 【是否显示】复选框值发生改变更新datagrid对应的值
 * 
 * @returns
 */
function onCheckIsVisible(id, rowIndex) {
	$("#cbbTabColumnsDataGrid").datagrid('removeEditor', 'colIsVisible'); // 删除【是否显示】编辑器
	$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【是否显示】编辑器
		field : 'colIsVisible',
		editor : {
			type : 'text'
		}
	});
	var checkbox = document.getElementById(id);
	var isCheck = false;
	if (checkbox.checked) {
		isCheck = true;
	}
	if (isCheck) {
		$('#cbbTabColumnsDataGrid').datagrid('selectRow', rowIndex).datagrid(
				'beginEdit', rowIndex);
		var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
				rowIndex);
		var sfgzEditor = editors[1];
		sfgzEditor.target.val("Y");
		$('#cbbTabColumnsDataGrid').datagrid('endEdit', rowIndex);
	} else {
		$('#cbbTabColumnsDataGrid').datagrid('selectRow', rowIndex).datagrid(
				'beginEdit', rowIndex);
		var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
				rowIndex);
		var sfgzEditor = editors[1];
		sfgzEditor.target.val("N");
		$('#cbbTabColumnsDataGrid').datagrid('endEdit', rowIndex);
	}
}

/**
 * 【是否编辑】转换方法
 * 
 * @param value
 * @param rowData
 * @param rowIndex
 * @returns {String}
 */
function fomaterIsEdit(value, rowData, rowIndex) {
	var c = "";
	if (rowData.colIsEdit == "Y") {
		c = "<input type='checkbox' id='" + rowData.colName
				+ "' checked='checked' value='Y' onclick='onCheckIsEdit(\""
				+ rowData.colName + "\"," + rowIndex + ")' />";
	} else {
		c = "<input type='checkbox' id='" + rowData.colName
				+ "' value='N' onclick='onCheckIsEdit(\"" + rowData.colName
				+ "\"," + rowIndex + ")' />";
	}
	return c;
}

/**
 * 【是否编辑】复选框值发生改变更新datagrid对应的值
 * 
 * @returns
 */
function onCheckIsEdit(id, rowIndex) {
	$("#cbbTabColumnsDataGrid").datagrid('removeEditor', 'colIsEdit'); // 删除【是否编辑】编辑器
	$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【是否编辑】编辑器
		field : 'colIsEdit',
		editor : {
			type : 'text'
		}
	});
	var checkbox = document.getElementById(id);
	var isCheck = false;
	if (checkbox.checked) {
		isCheck = true;
	}
	if (isCheck) {
		$('#cbbTabColumnsDataGrid').datagrid('selectRow', rowIndex).datagrid(
				'beginEdit', rowIndex);
		var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
				rowIndex);
		var sfgzEditor = editors[2];
		sfgzEditor.target.val("Y");
		$('#cbbTabColumnsDataGrid').datagrid('endEdit', rowIndex);
	} else {
		$('#cbbTabColumnsDataGrid').datagrid('selectRow', rowIndex).datagrid(
				'beginEdit', rowIndex);
		var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
				rowIndex);
		var sfgzEditor = editors[2];
		sfgzEditor.target.val("N");
		$('#cbbTabColumnsDataGrid').datagrid('endEdit', rowIndex);
	}
}

/**
 * 【是否补足】转换方法
 * 
 * @param value
 * @param rowData
 * @param rowIndex
 * @returns {String}
 */
function fomaterIsComplement(value, rowData, rowIndex) {
	var c = "";
	if (rowData.colIsComplement == "Y") {
		c = "<input type='checkbox' id='"
				+ rowData.id
				+ "Complement' checked='checked' value='Y' onclick='onCheckIsComplement(\""
				+ rowData.id + "Complement\"," + rowIndex + ")' />";
	} else {
		c = "<input type='checkbox' id='" + rowData.id
				+ "Complement' value='N' onclick='onCheckIsComplement(\""
				+ rowData.id + "Complement\"," + rowIndex + ")' />";
	}
	return c;
}

/**
 * 【是否补足】复选框值发生改变更新datagrid对应的值
 * 
 * @returns
 */
function onCheckIsComplement(id, rowIndex) {
	$("#cbbTabColumnsDataGrid").datagrid('removeEditor', 'colIsComplement'); // 删除【是否补足】编辑器
	$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【是否补足】编辑器
		field : 'colIsComplement',
		editor : {
			type : 'text'
		}
	});
	var checkbox = document.getElementById(id);
	var isCheck = false;
	if (checkbox.checked) {
		isCheck = true;
	}
	if (isCheck) {
		$('#cbbTabColumnsDataGrid').datagrid('selectRow', rowIndex).datagrid(
				'beginEdit', rowIndex);
		var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
				rowIndex);
		var sfgzEditor = editors[3];
		sfgzEditor.target.val("Y");
		$('#cbbTabColumnsDataGrid').datagrid('endEdit', rowIndex);
	} else {
		$('#cbbTabColumnsDataGrid').datagrid('selectRow', rowIndex).datagrid(
				'beginEdit', rowIndex);
		var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
				rowIndex);
		var sfgzEditor = editors[3];
		sfgzEditor.target.val("N");
		$('#cbbTabColumnsDataGrid').datagrid('endEdit', rowIndex);
	}
}

/**
 * 补足位数
 * 
 * @param value
 * @param row
 * @param index
 * @returns
 */
function fomaterComplementNum(value, row, index) {
	if (value == null || value == "null") {
		value = "";
	}
	if (row.colIsDisplay != "Y" && row.colIsSys != "N") {
		return "<font color='red'>" + value + "</font>";
	} else {
		return value;
	}
}

function selectAllCol() {
	if (isTemplet == 'Y') { // 显示基本字段
		isTemplet = 'N';
		document.getElementById("selectAllCol").style.display = '';
		document.getElementById("selectCol").style.display = 'none';

	} else { // 显示所有字段
		isTemplet = 'Y';
		document.getElementById("selectAllCol").style.display = 'none';
		document.getElementById("selectCol").style.display = '';

	}
	var url = 'platform/aos/commtablemanagerController/getCbbTabColumnsDataForZL.json?sysId='
			+ sysId + '&tableName=' + tableName + '&isTemplet=' + isTemplet;
	$('#cbbTabColumnsDataGrid').datagrid("options").url = url;
	$("#cbbTabColumnsDataGrid").datagrid('load', {
		param : null
	});
}

function fomaterColOrder(value, row, index) {
	if (value == null || value == "null") {
		value = "";
	}
	if (row.colIsDisplay == "N" && row.colIsSys == "Y") {
		return "<font color='red'>" + value + "</font>";
	} else {
		return value;
	}
}

function fomaterColLabel(value, row, index) {
	if (value == null || value == "null") {
		value = "";
	}
	if (row.colIsDisplay == "N" && row.colIsSys == "Y") {
		return "<font color='red'>" + value + "</font>";
	} else {
		return value;
	}
}

function fomaterColRuleTitle(value, row, index) {
	if (value == null || value == "null") {
		value = "";
	}
	if (row.colIsDisplay == "N" && row.colIsSys == "Y") {
		return "<font color='red'>" + value + "</font>";
	} else {
		return value;
	}
}

/**
 * 默认值显示转换
 * 
 * @param value
 * @param row
 * @param index
 */
function fomatercolValueName(value, row, index) {
	var colGeneMethod = row.colGeneMethod; // 生成方式规则
	if (colGeneMethod == "1") { // 默认值
		if (value == "currentUserId") {
			return commonLang.fomaterType.currentUserId;// "当前用户ID";
		} else if (value == "currentUser") {
			return commonLang.fomaterType.currentUser;// "当前用户";
		} else if (value == "currentUserName") {
			return commonLang.fomaterType.currentUserName;// "当前用户名称";
		} else if (value == "currentDept") {
			return commonLang.fomaterType.currentDept;// "当前部门";
		} else if (value == "currentDeptId") {
			return commonLang.fomaterType.currentDeptId;// "当前部门ID";
		} else if (value == "currentDeptName") {
			return commonLang.fomaterType.currentDeptName;// "当前部门名称";
		} else if (value == "currentOrg") {
			return commonLang.fomaterType.currentOrg;// "当前组织代码";
		} else if (value == "currentQzName") {
			return '当前全宗名称';// "当前全宗名称";
		} else if (value == "currentQzCode") {
			return '当前全宗代码';// "当前全宗代码";
		} else if (value == "currentNodeRemark") {
			return '当前数据节点属性';// "当前分类号";
		} else if (value == "currentDate") {
			return commonLang.fomaterType.fomaterType;// "当前时间";
		} else if (value == "parentDept") {
			return commonLang.fomaterType.parentDept;// "当前上级部门";
		} else if (value == "parentDeptName") {
			return commonLang.fomaterType.parentDeptName;// "当前上级部门名称";
		} else if (value == "parentDeptId") {
			return commonLang.fomaterType.parentDeptId;// "当前上级部门ID";
		} else if (value == "parentDeptCode") {
			return commonLang.fomaterType.parentDeptCode;// "当前上级部门代码 ";
		} else {
			return value;
		}
	} else {
		return value;
	}
}


/*******************************************************************************
 * 判断该节点对应表是否为2级表结构下的案卷级表
 */
function ckeckGeneMethod() {
	// 访问controller判断是否可以配置统计生成（2级节点的案卷级文件中的字段）
	$.ajax({
		url : 'platform/aos/commtablemanagerController/ckeckGeneMethod.json',
		data : {
			sysId : sysId,
			nodeId : nodeId,
			tableName : tableName
		},
		type : 'post',
		dataType : 'json',
		success : function(result) {
			if (result.flag == "success") {
				isSecondAndAJJ = true;
			} else if (result.flag == "failure") {
				isSecondAndAJJ = false;
			}
		}
	});
}

/**
 * 选择生成方式
 * 
 * @param record
 */
function onSelectGneMethod(record) {
	if (typeFlag) {
		type = record.lookupCode;
	} else {
		type = undefined;
	}

}

/**
 * 当【生成方式】发生改变时
 */
function typeOnChange(newValue, oldValue) {
	newValueSelect = newValue;
	var row = $("#cbbTabColumnsDataGrid").datagrid('getSelected');
	var colType = row.colType; // 字段类型
	var colDropdownType = row.colDropdownType; // 类型
	// 选择前验证
	if (newValue == "2") { // 为序列时
		if ("string" != colType && "clob" != colType && "integer" != colType
				&& "float" != colType) {
			var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
					editIndex);
			var sfgzEditor1 = editors[5];
			sfgzEditor1.target.combobox("select", oldValue);
			typeFlag = false;
			// commonLang.tip.alert,'提示' commonLang.tip.filed 此字段为
			// commonLang.tip.content34类型不为“空”,不能选择序列！'
			$.messager.alert(commonLang.tip.alert, commonLang.tip.filed + '【'
					+ colType + '】' + commonLang.tip.content34, 'warning');
			return false;
		}
		if (colDropdownType != "0") {
			var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
					editIndex);
			var sfgzEditor1 = editors[5];
			sfgzEditor1.target.combobox("select", oldValue);
			typeFlag = false;
			// commonLang.tip.alert,'提示' commonLang.tip.content33
			// '代码维护中【类型】不为“空”,不能选择序列！'
			$.messager.alert(commonLang.tip.alert, commonLang.tip.content33,
					'warning');
			return false;
		}
	} else if (newValue == "4") { // 组合项
		if ("string" != colType && "integer" != colType && "float" != colType) {
			var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
					editIndex);
			var sfgzEditor1 = editors[5];
			sfgzEditor1.target.combobox("select", oldValue);
			typeFlag = false;
			// commonLang.tip.alert,'提示' commonLang.tip.filed 此字段为
			// commonLang.tip.content35 类型,不能选择组合项
			$.messager.alert(commonLang.tip.alert, commonLang.tip.filed + '【'
					+ colType + '】' + commonLang.tip.content35, 'warning');
			return false;
		}
		if (colDropdownType != "0" && colDropdownType != "1") {
			var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
					editIndex);
			var sfgzEditor1 = editors[5];
			sfgzEditor1.target.combobox("select", oldValue);
			typeFlag = false;
			// commonLang.tip.alert,'提示' commonLang.tip.filed 此字段为
			// commonLang.tip.content36 代码维护中【类型】不为“空”或“参选”的,不能选择组合项！
			$.messager.alert(commonLang.tip.alert, commonLang.tip.content36,
					'warning');
			return false;
		}
	} else if (newValue == "5") { // 统计生成
		if (isSecondAndAJJ) { // 2级表结构下的案卷级表
			/** ***2015/07/23更改 - 郭亮(所有类型字段都可以配置统计生成)**** */
			/*
			 * if (colDropdownType != "0" && colDropdownType != "1") { var
			 * editors = $('#cbbTabColumnsDataGrid').datagrid( 'getEditors',
			 * editIndex); var sfgzEditor1 = editors[2];
			 * sfgzEditor1.target.combobox("select", oldValue); typeFlag =
			 * false; alert("代码维护中【类型】不为“空”或“参选”的,不能选择统计生成！"); return false; }
			 */
		} else {
			var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
					editIndex);
			var sfgzEditor1 = editors[5];
			sfgzEditor1.target.combobox("select", oldValue);
			typeFlag = false;
			// commonLang.tip.alert,'提示' commonLang.tip.content37
			// '该表不是2级表结构下的案卷级表,不能选择统计生成！'

			$.messager.alert(commonLang.tip.alert, commonLang.tip.content37,
					'warning');
			return false;
		}
	} else {
		typeFlag = true;
	}
}

/**
 * 【生成方式】选择隐藏面板事件
 */
function typeOnHidePanel() {
	var row = $("#cbbTabColumnsDataGrid").datagrid('getSelected');
	var colDropdownType = row.colDropdownType; // 类型
	var colType = row.colType; // 字段类型
	colGeneMethodOld = row.colGeneMethod;
	colGeneMethodRuleOld = row.colGeneMethodRule;
	colValueNameOld = row.colValueName;
	if (row.colGeneMethod == "1" && newValueSelect == "1" && typeFlag == true) {
		if (colType == "string" || colType == "clob" || colType == "date") { // 字符串，大字段,日期时间
			configForm("1");
		}
	} else if (row.colGeneMethod == "3" && newValueSelect == "3"
			&& typeFlag == true) {
		configFormForShunDai("3");
	} else if (row.colGeneMethod == "4" && newValueSelect == "4"
			&& typeFlag == true) {
		configForm("4");
	} else if (row.colGeneMethod == "5" && newValueSelect == "5"
			&& typeFlag == true) {
		configForm("5");
	} else if (row.colGeneMethod == "1" && newValueSelect == "1"
			&& typeFlag == true) {
		if (colDropdownType != "0") { // 类型为空
			configForm("1");
		}
	} else {
		if (type != undefined) {
			var lookupCode = type;
			var colType = row.colType; // 字段类型
			var colLength = row.colLength; // 长度
			var colDecimal = row.colDecimal; // 小数位数
			$('#cbbTabColumnsDataGrid').datagrid('endEdit', editIndex);
			// 清空生成方式显示值及生成方式真实值
			$("#cbbTabColumnsDataGrid")
					.datagrid('removeEditor', 'colValueName'); // 删除【生成方式规则显示】编辑器
			$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【生成方式规则显示】编辑器
				field : 'colValueName',
				editor : {
					type : 'text'
				}
			});
			$('#cbbTabColumnsDataGrid').datagrid('selectRow', editIndex)
					.datagrid('beginEdit', editIndex);
			var editors = $('#cbbTabColumnsDataGrid').datagrid('getEditors',
					editIndex);
			var sfgzEditor0 = editors[6];
			sfgzEditor0.target.val("");
			var sfgzEditor1 = editors[7];
			sfgzEditor1.target.val("");
			$('#cbbTabColumnsDataGrid').datagrid('endEdit', editIndex);
			// 空
			if (lookupCode == "0") {
				// 删除编辑器
				$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
						'colValueName'); // 删除【生成方式规则显示】编辑器
			}
			// 默认值
			if (lookupCode == "1") {
				if (colDropdownType == "0") { // 无
					// 删除编辑器
					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					configForm(lookupCode);
				} else if (colDropdownType == "1") { // 参选
					// 删除编辑器
					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					configForm(lookupCode);
				} else if (colDropdownType == "2") { // 只选
					// 删除编辑器
					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					configForm(lookupCode);
				} else if (colDropdownType == "3") { // 选择（选人，选部门，自定义弹出页）
					// 删除编辑器
					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					configForm(lookupCode);
				}
			}
			// 序列
			if (lookupCode == "2") {
				if ("string" == colType || "clob" == colType) { // 字符串,大字段
					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【生成方式规则显示】编辑器
						field : 'colValueName',
						editor : {
							type : 'validatebox',
							options : {
								required : false
							}
						}
					});
				} else if ("integer" == colType || "float" == colType) { // 整型，浮点型
					// 清空生成方式显示值
					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【生成方式规则显示】编辑器
						field : 'colValueName',
						editor : {
							type : 'text'
						}
					});
					$('#cbbTabColumnsDataGrid')
							.datagrid('selectRow', editIndex).datagrid(
									'beginEdit', editIndex);
					var editors = $('#cbbTabColumnsDataGrid').datagrid(
							'getEditors', editIndex);
					var sfgzEditor0 = editors[6];
					sfgzEditor0.target.val("");
					var sfgzEditor1 = editors[7];
					sfgzEditor1.target.val("");
					$('#cbbTabColumnsDataGrid').datagrid('endEdit', editIndex);

					$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
							'colValueName'); // 删除【生成方式规则显示】编辑器
					$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【生成方式规则显示】编辑器
						field : 'colValueName',
						editor : {
							type : 'numberbox'
						}
					});
				}
			}
			// 顺带
			if (lookupCode == "3") {
				// 清空生成方式显示值
				$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
						'colValueName'); // 删除【生成方式规则显示】编辑器
				$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【生成方式规则显示】编辑器
					field : 'colValueName',
					editor : {
						type : 'text'
					}
				});
				$('#cbbTabColumnsDataGrid').datagrid('selectRow', editIndex)
						.datagrid('beginEdit', editIndex);
				var editors = $('#cbbTabColumnsDataGrid').datagrid(
						'getEditors', editIndex);
				var sfgzEditor0 = editors[6];
				sfgzEditor0.target.val("");
				var sfgzEditor1 = editors[7];
				sfgzEditor1.target.val("");
				$('#cbbTabColumnsDataGrid').datagrid('endEdit', editIndex);
				$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
						'colValueName'); // 删除【生成方式规则显示】编辑器
				configFormForShunDai(lookupCode);
			}
			// 组合项
			if (lookupCode == "4") {
				// 清空生成方式显示值
				$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
						'colValueName'); // 删除【生成方式规则显示】编辑器
				$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【生成方式规则显示】编辑器
					field : 'colValueName',
					editor : {
						type : 'text'
					}
				});
				$('#cbbTabColumnsDataGrid').datagrid('selectRow', editIndex)
						.datagrid('beginEdit', editIndex);
				var editors = $('#cbbTabColumnsDataGrid').datagrid(
						'getEditors', editIndex);
				var sfgzEditor0 = editors[6];
				sfgzEditor0.target.val("");
				var sfgzEditor1 = editors[7];
				sfgzEditor1.target.val("");
				$('#cbbTabColumnsDataGrid').datagrid('endEdit', editIndex);
				$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
						'colValueName'); // 删除【生成方式规则显示】编辑器
				configForm(lookupCode);
			}
			// 统计生成
			if (lookupCode == "5") {
				// 清空生成方式显示值
				$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
						'colValueName'); // 删除【生成方式规则显示】编辑器
				$("#cbbTabColumnsDataGrid").datagrid('addEditor', { // 添加【生成方式规则显示】编辑器
					field : 'colValueName',
					editor : {
						type : 'text'
					}
				});
				$('#cbbTabColumnsDataGrid').datagrid('selectRow', editIndex)
						.datagrid('beginEdit', editIndex);
				var editors = $('#cbbTabColumnsDataGrid').datagrid(
						'getEditors', editIndex);
				var sfgzEditor0 = editors[6];
				sfgzEditor0.target.val("");
				var sfgzEditor1 = editors[7];
				sfgzEditor1.target.val("");
				$('#cbbTabColumnsDataGrid').datagrid('endEdit', editIndex);
				$("#cbbTabColumnsDataGrid").datagrid('removeEditor',
						'colValueName'); // 删除【生成方式规则显示】编辑器
				configForm(lookupCode);
			}
			$('#cbbTabColumnsDataGrid').datagrid('selectRow', editIndex)
					.datagrid('beginEdit', editIndex);
			type = undefined;
		}
	}
}

/**
 * 打开设置生成方式form
 */
function configForm(lookupCode) {
	var row = $('#cbbTabColumnsDataGrid').datagrid('getSelected');
	var id = row.id;
	var dialogId = "formConfigDialog";
	if ('5' == lookupCode) { // 统计生成设置页面
		toJspUrl = "avicit/cbb/techclass/tabledefine/commtablemanager/table_node_record_set_config_tjsc_manager";
	}
	//add by zhangjq 2019-8-2 11:53
	//增强组合项生成
	else if('4' == lookupCode){//组合项生成
		toJspUrl = "avicit/cbb/techclass/tabledefine/commtablemanager/table_node_record_set_config_zhx_manager";
	}
	//end add
	else { // 其他配置页面
		toJspUrl = "avicit/cbb/techclass/tabledefine/commtablemanager/table_node_record_set_config";
	}
	toActionUrl = "platform/aos/commtablemanagerController/toConfigSet?id="
			+ id + "&dialogId=" + dialogId + "&toJspUrl=" + toJspUrl
			+ "&sysId=" + sysId + "&nodeId=" + nodeId + "&nodeName="
			+ encodeURI(nodeName) + "&tableName=" + tableName + "&lookupCode="
			+ lookupCode;
	var usdEdit = new CommonDialog(dialogId, "1200", "500", toActionUrl,
	// commonLang.dialog.generationSet "设置生成方式"
	commonLang.dialog.generationSet, false, true, false);
	usdEdit.show();
}

function configFormForShunDai() {
	var row = $('#cbbTabColumnsDataGrid').datagrid('getSelected');
	var id = row.id;
	var dialogId = "formConfigDialog";
	var url = "platform/aos/commtablemanagerController/toConfigJspForShunDai?id="
			+ id
			+ "&dialogId="
			+ dialogId
			+ "&sysId="
			+ sysId
			+ "&nodeId="
			+ nodeId;
	var usdEdit = new CommonDialog(dialogId, "1200", "500", url, "设置生成方式",
			false, true, false);
	usdEdit.show();
}
function synchronization() {
	var synRows = $("#cbbTabColumnsDataGrid").datagrid('getRows');
	var synData = JSON.stringify(synRows);
	if (synRows.length > 0) {
		$
				.ajax({
					url : 'platform/aos/commtablemanagerController/syncCbbTabColumnsData.json',
					data : {
						param : synData,
						sysId : sysId,
						nodeId : nodeId,
						nodeName : nodeName,
						tableName : tableName
					},
					type : 'post',
					dataType : 'json',
					success : function(result) {
						if (result.flag == "failure") {
							parent.parent.parent.$.messager.show({
								title : commonLang.tip.alert,// '提示'
								// commonLang.optip.saveFailure"保存失败！"
								msg : commonLang.optip.synFailure
							});
						} else {
							reloadDataGrid();
							parent.parent.parent.$.messager.show({
								title : commonLang.tip.alert,// '提示'
								// commonLang.optip.saveSuccess"保存成功！"
								msg : commonLang.optip.synSuccess
							});
						}
						// 重置配置页面传回来的数据
						idSet = "";
						colGeneMethodSet = "";
						colGeneMethodRuleSet = "";
						groupJson = "";
						// 统计生成参数
						operation = "";
						groupSelect1 = "";
						groupSelect2 = "";
						groupSelect3 = "";
						groupInput1 = "";
						groupInput2 = "";
					}
				});
	} else {
		parent.parent.parent.$.messager.show({
			title : commonLang.tip.alert,// '提示'
			timeout : 2000,
			//commonLang.tip.alert2"没有可保存的记录！"
			msg : commonLang.tip.alert2
		});
	}
}